package net.ericaro.neojavagen.interfaces ;
import net.ericaro.neojavagen.interfaces.InterfaceModifiers;
import net.ericaro.neojavagen.interfaces.InterfaceBody;
import net.ericaro.neojavagen.packages.JavadocComment;
import net.ericaro.neojavagen.interfaces.InterfaceDeclaration;
import net.ericaro.neojavagen.interfaces.ExtendsInterfaces;
import net.ericaro.neojavagen.classes.TypeParameters;
import net.ericaro.neojavagen.types.Identifier;
import net.ericaro.neojavagen.interfaces.Annotations ;

/**
* *<pre> NormalInterfaceDeclaration :
    JavadocComment? Annotations? InterfaceModifiers? interface Identifier TypeParameters? ExtendsInterfaces? InterfaceBody
</pre>
*/
public class NormalInterfaceDeclaration  implements InterfaceDeclaration {

JavadocComment javadoccomment;
Annotations annotations;
InterfaceModifiers interfacemodifiers;
Identifier identifier;
TypeParameters typeparameters;
ExtendsInterfaces extendsinterfaces;
InterfaceBody interfacebody ;

public NormalInterfaceDeclaration( JavadocComment javadoccomment, Annotations annotations, InterfaceModifiers interfacemodifiers, Identifier identifier, TypeParameters typeparameters, ExtendsInterfaces extendsinterfaces, InterfaceBody interfacebody ){
	this.javadoccomment = javadoccomment; this.annotations = annotations; this.interfacemodifiers = interfacemodifiers; this.identifier = identifier; this.typeparameters = typeparameters; this.extendsinterfaces = extendsinterfaces; this.interfacebody = interfacebody ;
	}public NormalInterfaceDeclaration( Identifier identifier, InterfaceBody interfacebody ){
this.identifier = identifier; this.interfacebody = interfacebody ;
}


public String toString(){
	StringBuilder stringbuilder = new StringBuilder();
	if (this.javadoccomment !=null ) stringbuilder.append( this.javadoccomment ).append(" ");
if (this.annotations !=null ) stringbuilder.append( this.annotations ).append(" ");
if (this.interfacemodifiers !=null ) stringbuilder.append( this.interfacemodifiers ).append(" ");
stringbuilder.append( "interface" ).append(" ");
stringbuilder.append( this.identifier ).append(" ");
if (this.typeparameters !=null ) stringbuilder.append( this.typeparameters ).append(" ");
if (this.extendsinterfaces !=null ) stringbuilder.append( this.extendsinterfaces ).append(" ");
stringbuilder.append( this.interfacebody ).append(" ") ;
	return stringbuilder.toString();
}

}
